// license-header java merge-point
/**
 * This is only generated once! It will never be overwritten.
 * You can (and have to!) safely modify it by hand.
 */
package com.jrsystems.fleet.vehicle;
/**
 * @see com.jrsystems.fleet.vehicle.Part
 */
public class PartDaoImpl
    extends com.jrsystems.fleet.vehicle.PartDaoBase
{
    /**
     * @see com.jrsystems.fleet.vehicle.PartDao#toPartVO(com.jrsystems.fleet.vehicle.Part, com.jrsystems.fleet.vehicle.vo.PartVO)
     */
    public void toPartVO(
        com.jrsystems.fleet.vehicle.Part source,
        com.jrsystems.fleet.vehicle.vo.PartVO target)
    {
        // @todo verify behavior of toPartVO
        super.toPartVO(source, target);
        // WARNING! No conversion for target.replacedParts (can't convert source.getReplacedParts():com.jrsystems.fleet.maintenance.Maintenance to com.jrsystems.fleet.maintenance.vo.MaintenanceVO[]
    }


    /**
     * @see com.jrsystems.fleet.vehicle.PartDao#toPartVO(com.jrsystems.fleet.vehicle.Part)
     */
    public com.jrsystems.fleet.vehicle.vo.PartVO toPartVO(final com.jrsystems.fleet.vehicle.Part entity)
    {
        // @todo verify behavior of toPartVO
        return super.toPartVO(entity);
    }


    /**
     * Retrieves the entity object that is associated with the specified value object
     * from the object store. If no such entity object exists in the object store,
     * a new, blank entity is created
     */
    private com.jrsystems.fleet.vehicle.Part loadPartFromPartVO(com.jrsystems.fleet.vehicle.vo.PartVO partVO)
    {
        // @todo implement loadPartFromPartVO
        throw new java.lang.UnsupportedOperationException("com.jrsystems.fleet.vehicle.loadPartFromPartVO(com.jrsystems.fleet.vehicle.vo.PartVO) not yet implemented.");

        /* A typical implementation looks like this:
        com.jrsystems.fleet.vehicle.Part part = this.load(partVO.getId());
        if (part == null)
        {
            part = com.jrsystems.fleet.vehicle.Part.Factory.newInstance();
        }
        return part;
        */
    }

    
    /**
     * @see com.jrsystems.fleet.vehicle.PartDao#partVOToEntity(com.jrsystems.fleet.vehicle.vo.PartVO)
     */
    public com.jrsystems.fleet.vehicle.Part partVOToEntity(com.jrsystems.fleet.vehicle.vo.PartVO partVO)
    {
        // @todo verify behavior of partVOToEntity
        com.jrsystems.fleet.vehicle.Part entity = this.loadPartFromPartVO(partVO);
        this.partVOToEntity(partVO, entity, true);
        return entity;
    }


    /**
     * @see com.jrsystems.fleet.vehicle.PartDao#partVOToEntity(com.jrsystems.fleet.vehicle.vo.PartVO, com.jrsystems.fleet.vehicle.Part)
     */
    public void partVOToEntity(
        com.jrsystems.fleet.vehicle.vo.PartVO source,
        com.jrsystems.fleet.vehicle.Part target,
        boolean copyIfNull)
    {
        // @todo verify behavior of partVOToEntity
        super.partVOToEntity(source, target, copyIfNull);
    }

}